object NarcissisticNumber {
  def main(args: Array[String]): Unit = {
    // 遍历100到999之间的所有数字
    for (num <- 100 to 999) {
      if (isNarcissistic(num)) {
        println(s"$num 是一个水仙花数")
      }
    }
  }

  // 判断一个数字是否是水仙花数
  def isNarcissistic(num: Int): Boolean = {
    // 将数字转换为字符串，以便逐位处理
    val digits = num.toString
    // 计算每一位数字的立方和
    val sumOfCubes = digits.map(_.asDigit).map(math.pow(_, 3)).sum
    // 判断立方和是否等于原数字
    sumOfCubes == num
  }
}